home *** CD-ROM | disk | FTP | other *** search
/ Vypalování CD / Vypalovani-CD-cd1.bin / Backup-Burner Add-On SDK 5.0 / ExampleSource / BCB / CallingBB.cpp
C/C++ Source or Header  |  2002-03-23  |  3KB  |  116 lines

  1. // ----------------------------------------------------------------------------
  2. //
  3. //  Project File:  CallingBB.CPP
  4. //                    A partial program that uses LoadLibrary to 
  5. //                    access MakeBackupCD from BackupBurner.dll.
  6. //
  7. //    Edit the program path value before compiling.
  8. //
  9. //  Demo for use with Backup-Burner Add-on SDK
  10. //  February, 2002
  11. //  ⌐Desernet Broadband Media, Inc.
  12. //  Produced by: D. Clark
  13. //
  14. //  Compiles in Borland C++Builder 5 without warnings or errors.
  15. //
  16. // ----------------------------------------------------------------------------
  17.  
  18. #include <windows.h>
  19.  
  20. VOID main(VOID)
  21. {
  22.  
  23.     // Uses a StdCall calling convention.
  24.         // CALLBACK is not required in BCB.
  25.     typedef int (CALLBACK *MakeBackupCDPtr)(const char *szBBRegName,
  26.                         const char *szBBRegCode,
  27.                         const char *szBBVolume,
  28.                         const char *szBBTitle,
  29.                             const char *szBBColorForm,
  30.                         const char *szBBColorText,
  31.                         const char *szPathtoBackupFolder,
  32.                                 char *szBBFutureUse);
  33.  
  34.     MakeBackupCDPtr lpfnMakeBackupCD;
  35.  
  36.     HINSTANCE hDLL; //Choose one
  37.     //HMODULE hDLL;
  38.  
  39.     int  iResultCode;
  40.     char szBBRegName[32];
  41.     char szBBRegCode[512];
  42.     char szBBVolume[16];
  43.     char szBBTitle[128];
  44.     char szBBColorForm[32];
  45.     char szBBColorText[32];
  46.     char szPathtoBackupFolder[512];
  47.     char szBBFutureUse[512];
  48.  
  49.         strcpy(szBBRegName    ,  "DEMOUSER");
  50.         strcpy(szBBRegCode    ,  "ABCD1234");
  51.         strcpy(szBBVolume    ,  "MyBackupCD");// What ever you want here, but no spaces allowed
  52.         strcpy(szBBTitle    ,  "My Project's Name is __");//This shows up on the form.
  53.         strcpy(szBBColorForm    ,  "clSilver");//default is clSilver, don't use hex color
  54.         strcpy(szBBColorText    ,  "clBlack");//default is clBlack, don't use hex color
  55.         strcpy(szPathtoBackupFolder,  "c:\\myprogpath\\FilesToBackup\\");
  56.         strcpy(szBBFutureUse    ,  "");
  57.  
  58.     hDLL = LoadLibrary("c:\\myprogpath\\Bin\\BackupBurner.dll");
  59.  
  60.     if(hDLL == NULL)
  61.     {
  62.         // handle error
  63.         exit(1);
  64.     }
  65.  
  66.     lpfnMakeBackupCD = (MakeBackupCDPtr) GetProcAddress(hDLL, "MakeBackupCD");
  67.  
  68.     if(lpfnMakeBackupCD == NULL)
  69.     {
  70.         // handle error
  71.         exit(1);
  72.     }
  73.  
  74.  
  75.     iResultCode = (*lpfnMakeBackupCD)(szBBRegName,
  76.                                           szBBRegCode,
  77.                           szBBVolume,
  78.                           szBBTitle,
  79.                           szBBColorForm,
  80.                           szBBColorText,
  81.                           szPathtoBackupFolder,
  82.                           szBBFutureUse);
  83.  
  84.     switch (iResultCode)
  85.     {
  86.         case -2:// ResultCode = -2 Installation Error- version mismatch';
  87.             break;
  88.         case -1:// ResultCode = -1 User canceled' ;
  89.             break;
  90.         case 0:    // ResultCode = 0  it was a successful burn!
  91.             break;
  92.         case 1: // ResultCode = 1  User canceled
  93.             break;
  94.         case 2: // ResultCode = 2  Installation Error- files missing';
  95.             break;
  96.         case 3: // ResultCode = 3  Insufficent disk space';
  97.             break;
  98.         case 5: // ResultCode = 5  there was not a blank CD';
  99.             break;
  100.         case 7: // ResultCode = 7  bad burn during writing ';
  101.             break;
  102.         case 8: // ResultCode = 8  no CD recorder detected. ' 
  103.             break;
  104.         case 9: // ResultCode = 9  Demo expired.'
  105.             break;
  106.         case 11: // ResultCode = 11 User does not have admin rights to access the ASPI manager.'
  107.             break;
  108.         default:
  109.             break;
  110.     }
  111.  
  112.     FreeLibrary(hDLL);
  113.     exit(0);
  114. }
  115.  
  116.